1. Field of the Invention
The present invention relates generally to the field of packetized data transmission, and more particularly, to a system and method for reliable transport of Time Division Multiplexed (TDM) data streams over packet networks.
2. Description of the Related Art
Digital voice communication networks are generally connection-oriented, that is, there is a dedicated circuit connecting the two end-points. The voice signal is sampled at a fixed rate and the samples are then transmitted over the dedicated circuit. The transmission of the samples is guaranteed to occur over the dedicated circuit, since there is no other data traffic to interfere. A standard voice circuit uses a 64 kb/s data path. Multiple 64 kb/s circuits can be multiplexed onto a single hardware transmission channel by alternating the point in time that each circuit can access the higher-speed channel. This technique is known as Time Division Multiplexing (TDM). The term “TDM circuit” is commonly used to refer to a connection-oriented circuit that has a certain dedicated bandwidth between the two end-points, and has synchronous data transfer.
When data is sent across a TDM circuit, the data samples that are sent from one end are reproduced in the same sequential order at the receiving end. Additionally, the timing between the data samples is consistent, i.e. any transmission delay is applied equally to all data samples.
In contrast, the Internet Protocol (IP) is an unreliable, connectionless delivery mechanism for data transfer across networks. The IP protocol defines the basic unit of data transfer (a packet) and the specification of the data format. In addition, the IP protocol provides the routing functionality needed to determine which path to send data across a network.
As defined and implemented, the IP protocol provides no guarantee of success in transferring data (i.e. it is unreliable), and there is no dedicated connection between the source and destination nodes (i.e. it is connectionless). Currently, most data networks are IP packet-based networks.
There are many applications that use data communication networks that expect to have data transported across TDM circuits. As such, these applications cannot tolerate the insertion of a packet-based network between the end-points. Since a packet-based network is unreliable, the data packets may be lost, duplicated, arrive out of order or arrive at variable time intervals. Thus, if the data passes over a packet network, the receiving end is unable to adequately recreate the TDM data stream for the application. FIG. 1 illustrates a TDM to IP to TDM network implementation.
One of the most popular protocols used to achieve reliable packet delivery over packet networks is TCP (Transmission Control Protocol). TCP utilizes the technique of positive acknowledgement with retransmission. In other words, an acknowledgement packet is sent back to the sending node from the recipient for every packet that is successfully received. The sending node waits a specified amount of time to receive the acknowledgement. If the sending node fails to receive an acknowledgement within the specified time period, the sending node retransmits the same packet. A new timer is set until an acknowledgement is received for the retransmitted packet. This process continues until an acknowledgement is received, or the sending node eventually gives up after a certain number of retries. TCP varies the amount of time the sending node waits for acknowledgements based on the network conditions.
In order to overcome the problem with packets arriving out of order, TCP assigns a sequence number to each packet so that the recipient can properly order the packets and remove any duplicates. Also, in order to increase network bandwidth efficiency, TCP permits the sending of multiple packets prior to receiving an acknowledgement for the first packet. In fact, TCP can vary the number of packets to be sent prior to receiving an acknowledgement, depending on network load conditions.
While TCP can solve some of the issues associated with reliably transporting TDM data across a packet network, it does not address the requirement that the data must be successfully regenerated at fixed time interval at the destination. In other words, TCP does not guarantee when a packet will be ready for the TDM application, only that the packet will be successfully received at some point.
Voice over IP (VoIP) communication systems are specialized implementations of TDM data transmission over packet networks. The specific TDM data in this instance is voice samples. Human voice can tolerate some packet loss in a network since voice communications are not seriously impacted if brief intervals of a call are missing. Also, lost frames could simply be replaced by repeating previous frames to avoid periods of silence. Moreover, due to the nature of speech, lost frames may be replaced by extrapolating the data from the previous frames or by interpolating between previous and future frames. While this will not reproduce the original data exactly, it will provide some improvement over periods of silence.
The most important considerations for VoIP systems is that the voice data is transmitted real-time and that any delays are minimized. So while VoIP systems do maintain the delivery time requirements for TDM data, they do not successfully address the requirements of guaranteeing the delivery of all the data.